package com.hzlh.mapper;

import java.util.List;
import java.util.Map;

import com.hzlh.domain.po.IPhoneStartPo;
import com.hzlh.domain.po.LoginAdmin;
import com.hzlh.domain.po.PhoneUserPo;

public interface LoginMapper {
	
	public LoginAdmin login(LoginAdmin user);
	
	public int getPhoneUserCount(Map<String, Object> map);

	public List<PhoneUserPo> getPhoneUserPage(Map<String, Object> map);
	
	/**
	 * @Description: 获取用户分页列表
	 * @param map
	 * @return List<LoginAdmin>  
	 * @throws
	 * @author liu_wenfeng
	 * @date 2014年9月10日 下午5:20:29
	 */
    public List<LoginAdmin> getUserPage(Map<String,Object> map);
	
	/**
	 * @Description: 通过id获取权限
	 * @param id
	 * @return LoginAdmin  
	 * @throws
	 * @author liu_wenfeng
	 * @date 2014年9月10日 下午3:00:42
	 */
	public LoginAdmin getUserById(Long id);
	
	/**
	 * 根据id或者phone从管理员表或者手机用户表读取用户的ID/PHONE和NICK_NAME字段
	 * @param map
	 * @return
	 */
	public List<Map<String, String>> getByIdOrPhone(Map<String, Object> map);
	
	/**
	 * @Description: 记录条数
	 * @param map
	 * @return int  
	 * @throws
	 * @author liu_wenfeng
	 * @date 2014年9月10日 下午3:01:08
	 */
	public int getUserCount(Map<String,Object> map);
	
	/**
	 * @Description: 新增用户
	 * @param po
	 * @return int  
	 * @throws
	 * @author liu_wenfeng
	 * @date 2014年9月10日 下午3:02:44
	 */
	public int insertUser(LoginAdmin po);
	
	/**
	 * @Description: 修改用户
	 * @param po
	 * @return int  
	 * @throws
	 * @author liu_wenfeng
	 * @date 2014年9月10日 下午3:03:06
	 */
	public int updateUser(LoginAdmin po);
	
	/**
	 * @Description: 删除用户
	 * @param ids
	 * @return int  
	 * @throws
	 * @author liu_wenfeng
	 * @date 2014年9月10日 下午3:03:19
	 */
	public int deleteUser(Long[] ids);

	/**
	 * @Description: 所有主持人
	 * @param map
	 * @return List<LoginAdmin>  
	 * @throws
	 * @author liu_wenfeng
	 * @date 2015年5月12日 下午8:27:54
	 */
	public List<LoginAdmin> getPresenterList(Map<String, Object> map);

	/**
	 * @Description: 获取关联主持人或已选主持人
	 * @param map
	 * @return List<LoginAdmin>  
	 * @throws
	 * @author liu_wenfeng
	 * @date 2015年5月15日 下午1:25:35
	 */
	public List<LoginAdmin> getResourcePresenterList(Map<String, Object> map);

	/**
	 * @Description: 获取关联主持人或已选主持人ID
	 * @param map
	 * @return Long[]
	 * @throws
	 * @author liu_wenfeng
	 * @date 2015年6月8日 下午10:09:01
	 */
	public Long[] getResourcePresenterIds(Map<String, Object> map);
	
	/**
	 * @Description: 获取用户ID 和手机类型
	 * @param map
	 * @return
	 * @throws
	 * @author 
	 * @date
	 */
	public List<IPhoneStartPo> getPhoneActivePage(Map<String, Object> map);
	/*
	 *获取人数
	 * **/
	public int getPhoneActiveCount(Map<String, Object> map);
	
	public List<IPhoneStartPo> getUserActivePage(Map<String, Object> map);
	
	public List<PhoneUserPo> getUserRegisterPage(Map<String, Object> map);

}
